본문으로 건너뛰기

MMU에 대해서 설명해주세요.

메모리 관리는 MMU(Memoery Management Unit)이 담당한다. 메모리 관리자의 작업은 가져오기(fetch), 배치(replacement), 재배치(replacement)이다.

  1. 가져오기 프로그램과 데이터를 메모리로 가져오는 작업이다. 메모리 관리자는 사용자가 요청하면 프로그램과 데이터를 모두 메모리로 가져온다. 그러나 특정 상황에서는 일부만 가져와서 실행하기도 한다. 또한, 사용자 요청이 없어도 앞으로 필요할 것이라고 예상되는 데이터를 미리 가져오기도 한다.
  2. 배치 가져온 프로그램과 데이터를 메모리의 어떤 부분에 올려놓을지 결정하는 작업이다. 배치 작업 전에 메모리를 어떤 크기로 자를 것인지가 매우 중요하다. 같은 크기로 자르거나, 실행되는 프로세스의 크기에 맞게 자르냐에 따라 메모리 관리의 복잡성이 달라진다.
  3. 재배치 작업 새로운 프로세스를 가져와야 하는데 메모리가 꽉 찼다면 메모리에 있는 프로세스를 하드디스크로 옮겨놓아야 새로운 프로세스를 메모리에 가져올 수 있다. 이처럼 꽉 차 있는 메모리에 새로운 프로세스를 가져오기 위해 오래된 프로세스를 내보내는 작업이 재배치 작업이다.